An “Enumeration” Type can have any BaseType.

An “Enumeration” Type can, but need not, list Facets. Each Facet is an allowed value for an instance of the Type. The list of Facets may, or may not, be exhaustive or subject to change. This means that an instance of the Type may, or may not, be permitted to have a value that is not listed in the Facets – it is probably not possible to be sure by looking at the Types Register alone. Refer to the DefiningDocument or relevant Standard for full details about each Type entry.

If an “Enumeration” Type lists Facets then the Type must have one of the BaseTypes given below. This is so that the format of each Value, and any relevant restrictions on the Values, are known by all users of the Types Register. Additional BaseTypes may be added below at any time.

If BaseType is the UL of an “Integer” Type then:

  • Each Value in the Facets must be a string that is a decimal representation of an integer
  • Each Value in the Facets must represent an integer that is unique within the Facets of the Type

If BaseType is the UL of the “AUID” Type then:

  • Each Value in the Facets must be a string that is a urn representation of a UL of an entry in the Labels Register
  • Each Value in the Facets must represent a UL that is unique within the Facets of the Type

If BaseType is the UL of a “String” Type, and that “String” Type has a BaseType which is the UL of a “Character” Type then:

  • Each Value in the Facets must be unique within the Facets of the Type
  • Some further explanation applying to this case:

  • Each Value is a string/text and each instance of the “Enumeration” Type is also a string/text – therefore, the only conversion that may be required is to convert the character encoding used (e.g. US-ASCII to UTF-8).

  • Practically, it is possible for Values in the Types Register XML files to be any sequence of Unicode code points.
  • Clearly each Value must only use Unicode code points that are supported by the BaseType (so, for example, there are restrictions if the BaseType is “ISO7” (a US-ASCII string) but not if the BaseType is “UTF8String”).
  • If, and only if, two Values within Facets of a Type are identical sequences of Unicode code points then they are considered to be identical for the purposes of the “must be unique” constraint above. Note that there are no further globally imposed restrictions on the contents of the Values – for example, there are no restrictions on the use of whitespace and no stipulations in relation to case sensitivity.